package com.lab.vo;

import lombok.Data;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.List;

/**
 * 日进度VO（视图对象）
 * 用于向前端返回完整的日进度信息，整合主表数据、成员基本信息及内容列表，便于前端一站式展示
 */
@Data
public class DailyProgressVO {

    /**
     * 日进度主表ID
     * 对应实体类id字段，用于前端标识单条日进度记录（如编辑/删除操作）
     */
    private Integer id;

    /**
     * 成员ID
     * 对应实体类memberId字段，用于前端关联成员信息（如跳转成员详情页）
     */
    private Integer memberId;

    /**
     * 成员姓名（冗余字段）
     * 来源于member表的name字段，无需前端二次查询，直接展示成员姓名
     */
    private String memberName;

    /**
     * 进度日期
     * 对应实体类progressDate字段，展示该条进度记录所属的日期
     */
    private LocalDate progressDate;

    /**
     * 角色类型
     * 对应实体类roleType字段，展示成员在该进度记录中的角色（如前端/后端）
     */
    private String roleType;

    /**
     * 日进度内容列表
     * 关联DailyProgressContentVO，展示该日进度下的所有具体内容详情
     */
    private List<DailyProgressContentVO> content;

    /**
     * 创建时间
     * 对应实体类createTime字段，展示该进度记录的提交时间（便于前端排序或筛选最新进度）
     */
    private LocalDateTime createTime;
}